<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, height=device-height, initial-scale=1, user-scalable=no">
  <meta name="description" content="API docs for the JanusClient class from the janus_client library, for the Dart programming language.">
  <title>JanusClient class - janus_client library - Dart API</title>

  
  <link href="https://fonts.googleapis.com/css?family=Source+Code+Pro:500,400i,400,300|Source+Sans+Pro:400,300,700" rel="stylesheet">
  <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
  <link rel="stylesheet" href="../static-assets/github.css">
  <link rel="stylesheet" href="../static-assets/styles.css">
  <link rel="icon" href="../static-assets/favicon.png">

</head>

<body data-base-href="../"
      data-using-base-href="false">

<div id="overlay-under-drawer"></div>

<header id="title">
  <button id="sidenav-left-toggle" type="button">&nbsp;</button>
  <ol class="breadcrumbs gt-separated dark hidden-xs">
    <li><a href="../index.html">janus_client</a></li>
    <li><a href="../janus_client/janus_client-library.html">janus_client</a></li>
    <li class="self-crumb">JanusClient class</li>
  </ol>
  <div class="self-name">JanusClient</div>
  <form class="search navbar-right" role="search">
    <input type="text" id="search-box" autocomplete="off" disabled class="form-control typeahead" placeholder="Loading search...">
  </form>
</header>

<main>

  <div id="dartdoc-sidebar-left" class="col-xs-6 col-sm-3 col-md-2 sidebar sidebar-offcanvas-left">
    <header id="header-search-sidebar" class="hidden-l">
      <form class="search-sidebar" role="search">
        <input type="text" id="search-sidebar" autocomplete="off" disabled class="form-control typeahead" placeholder="Loading search...">
      </form>
    </header>
    
    <ol class="breadcrumbs gt-separated dark hidden-l" id="sidebar-nav">
      <li><a href="../index.html">janus_client</a></li>
      <li><a href="../janus_client/janus_client-library.html">janus_client</a></li>
      <li class="self-crumb">JanusClient class</li>
    </ol>
    
    <h5>janus_client library</h5>
    <ol>
      <li class="section-title"><a href="../janus_client/janus_client-library.html#classes">Classes</a></li>
      <li><a href="../janus_client/JanusClient-class.html">JanusClient</a></li>
    
    
    
    
    
    
    
    
    </ol>
  </div>

  <div id="dartdoc-main-content" class="col-xs-12 col-sm-9 col-md-8 main-content">
      <div><h1><span class="kind-class">JanusClient</span> class  </h1></div>

    <section class="desc markdown">
      <p>Main Class for setting up janus server connection details and important methods for interacting with janus server</p>
    </section>
    

    <section class="summary offset-anchor" id="constructors">
      <h2>Constructors</h2>

      <dl class="constructor-summary-list">
        <dt id="JanusClient" class="callable">
          <span class="name"><a href="../janus_client/JanusClient/JanusClient.html">JanusClient</a></span><span class="signature">(<span class="parameter" id="-param-server">{<span>@<a href="https://pub.dev/documentation/meta/1.3.0-nullsafety.3/meta/required-constant.html">required</a></span> <span class="type-annotation">dynamic</span> <span class="parameter-name">server</span>, </span><span class="parameter" id="-param-iceServers"><span>@<a href="https://pub.dev/documentation/meta/1.3.0-nullsafety.3/meta/required-constant.html">required</a></span> <span class="type-annotation"><a href="https://api.flutter.dev/flutter/dart-core/List-class.html">List</a><span class="signature">&lt;<wbr><span class="type-parameter"><a href="../utils/RTCIceServer-class.html">RTCIceServer</a></span>&gt;</span></span> <span class="parameter-name">iceServers</span>, </span><span class="parameter" id="-param-refreshInterval"><span class="type-annotation"><a href="https://api.flutter.dev/flutter/dart-core/int-class.html">int</a></span> <span class="parameter-name">refreshInterval</span>: <span class="default-value">50</span>, </span><span class="parameter" id="-param-apiSecret"><span class="type-annotation"><a href="https://api.flutter.dev/flutter/dart-core/String-class.html">String</a></span> <span class="parameter-name">apiSecret</span>, </span><span class="parameter" id="-param-isUnifiedPlan"><span class="type-annotation"><a href="https://api.flutter.dev/flutter/dart-core/bool-class.html">bool</a></span> <span class="parameter-name">isUnifiedPlan</span>: <span class="default-value">false</span>, </span><span class="parameter" id="-param-token"><span class="type-annotation"><a href="https://api.flutter.dev/flutter/dart-core/String-class.html">String</a></span> <span class="parameter-name">token</span>, </span><span class="parameter" id="-param-maxEvent"><span class="type-annotation"><a href="https://api.flutter.dev/flutter/dart-core/int-class.html">int</a></span> <span class="parameter-name">maxEvent</span>: <span class="default-value">10</span>, </span><span class="parameter" id="-param-withCredentials"><span class="type-annotation"><a href="https://api.flutter.dev/flutter/dart-core/bool-class.html">bool</a></span> <span class="parameter-name">withCredentials</span>: <span class="default-value">false</span>}</span>)</span>
        </dt>
        <dd>
          Instance of JanusClient is Starting point of any WebRTC operations with janus WebRTC gateway
refreshInterval is by default 50, make sure this value is less than session_timeout in janus configuration
value greater than session_timeout might lead to session being destroyed and can cause general functionality to fail
maxEvent property is an optional value whose function is to specify maximum number of events fetched using polling in rest/http mechanism by default it fetches 10 events in a single api call
isUnifiedPlan is a new feature introduced by google for supporting multiple streams on a single peer connection, you can enable it by setting it to true by default it is false 
        </dd>
      </dl>
    </section>

    <section class="summary offset-anchor" id="instance-properties">
      <h2>Properties</h2>

      <dl class="properties">
        <dt id="apiSecret" class="property">
          <span class="name"><a href="../janus_client/JanusClient/apiSecret.html">apiSecret</a></span>
          <span class="signature">&#8596; <a href="https://api.flutter.dev/flutter/dart-core/String-class.html">String</a></span>         
        </dt>
        <dd>
           
                  <div class="features">read / write</div>
</dd>
        <dt id="currentJanusURI" class="property">
          <span class="name"><a href="../janus_client/JanusClient/currentJanusURI.html">currentJanusURI</a></span>
          <span class="signature">&#8594; dynamic</span>         
        </dt>
        <dd>
           
                  <div class="features">read-only</div>
</dd>
        <dt id="hashCode" class="property inherited">
          <span class="name"><a href="https://api.flutter.dev/flutter/dart-core/Object/hashCode.html">hashCode</a></span>
          <span class="signature">&#8594; <a href="https://api.flutter.dev/flutter/dart-core/int-class.html">int</a></span>         
        </dt>
        <dd class="inherited">
          The hash code for this object. <a href="https://api.flutter.dev/flutter/dart-core/Object/hashCode.html">[...]</a>
                  <div class="features">read-only, inherited</div>
</dd>
        <dt id="iceServers" class="property">
          <span class="name"><a href="../janus_client/JanusClient/iceServers.html">iceServers</a></span>
          <span class="signature">&#8596; <a href="https://api.flutter.dev/flutter/dart-core/List-class.html">List</a><span class="signature">&lt;<wbr><span class="type-parameter"><a href="../utils/RTCIceServer-class.html">RTCIceServer</a></span>&gt;</span></span>         
        </dt>
        <dd>
           
                  <div class="features">read / write</div>
</dd>
        <dt id="isConnected" class="property">
          <span class="name"><a href="../janus_client/JanusClient/isConnected.html">isConnected</a></span>
          <span class="signature">&#8594; dynamic</span>         
        </dt>
        <dd>
           
                  <div class="features">read-only</div>
</dd>
        <dt id="isUnifiedPlan" class="property">
          <span class="name"><a href="../janus_client/JanusClient/isUnifiedPlan.html">isUnifiedPlan</a></span>
          <span class="signature">&#8596; <a href="https://api.flutter.dev/flutter/dart-core/bool-class.html">bool</a></span>         
        </dt>
        <dd>
           
                  <div class="features">read / write</div>
</dd>
        <dt id="isUnifiedPlan_" class="property">
          <span class="name"><a href="../janus_client/JanusClient/isUnifiedPlan_.html">isUnifiedPlan_</a></span>
          <span class="signature">&#8594; dynamic</span>         
        </dt>
        <dd>
           
                  <div class="features">read-only</div>
</dd>
        <dt id="maxEvent" class="property">
          <span class="name"><a href="../janus_client/JanusClient/maxEvent.html">maxEvent</a></span>
          <span class="signature">&#8596; <a href="https://api.flutter.dev/flutter/dart-core/int-class.html">int</a></span>         
        </dt>
        <dd>
           
                  <div class="features">read / write</div>
</dd>
        <dt id="refreshInterval" class="property">
          <span class="name"><a href="../janus_client/JanusClient/refreshInterval.html">refreshInterval</a></span>
          <span class="signature">&#8596; <a href="https://api.flutter.dev/flutter/dart-core/int-class.html">int</a></span>         
        </dt>
        <dd>
           
                  <div class="features">read / write</div>
</dd>
        <dt id="runtimeType" class="property inherited">
          <span class="name"><a href="https://api.flutter.dev/flutter/dart-core/Object/runtimeType.html">runtimeType</a></span>
          <span class="signature">&#8594; <a href="https://api.flutter.dev/flutter/dart-core/Type-class.html">Type</a></span>         
        </dt>
        <dd class="inherited">
          A representation of the runtime type of the object. 
                  <div class="features">read-only, inherited</div>
</dd>
        <dt id="server" class="property">
          <span class="name"><a href="../janus_client/JanusClient/server.html">server</a></span>
          <span class="signature">&#8596; dynamic</span>         
        </dt>
        <dd>
           
                  <div class="features">read / write</div>
</dd>
        <dt id="sessionId" class="property">
          <span class="name"><a href="../janus_client/JanusClient/sessionId.html">sessionId</a></span>
          <span class="signature">&#8594; <a href="https://api.flutter.dev/flutter/dart-core/int-class.html">int</a></span>         
        </dt>
        <dd>
           
                  <div class="features">read-only</div>
</dd>
        <dt id="token" class="property">
          <span class="name"><a href="../janus_client/JanusClient/token.html">token</a></span>
          <span class="signature">&#8596; <a href="https://api.flutter.dev/flutter/dart-core/String-class.html">String</a></span>         
        </dt>
        <dd>
           
                  <div class="features">read / write</div>
</dd>
        <dt id="withCredentials" class="property">
          <span class="name"><a href="../janus_client/JanusClient/withCredentials.html">withCredentials</a></span>
          <span class="signature">&#8596; <a href="https://api.flutter.dev/flutter/dart-core/bool-class.html">bool</a></span>         
        </dt>
        <dd>
           
                  <div class="features">read / write</div>
</dd>
      </dl>
    </section>

    <section class="summary offset-anchor" id="instance-methods">
      <h2>Methods</h2>
      <dl class="callables">
        <dt id="attach" class="callable">
          <span class="name"><a href="../janus_client/JanusClient/attach.html">attach</a></span><span class="signature">(<wbr><span class="parameter" id="attach-param-plugin"><span class="type-annotation"><a href="../Plugin/Plugin-class.html">Plugin</a></span> <span class="parameter-name">plugin</span></span>)
            <span class="returntype parameter">&#8594; Future</span>
          </span>
                  </dt>
        <dd>
          Attach Plugin to janus instance, for any project you need single janus instance to which you can attach any number of supported plugin 
                  
</dd>
        <dt id="connect" class="callable">
          <span class="name"><a href="../janus_client/JanusClient/connect.html">connect</a></span><span class="signature">(<wbr><span class="parameter" id="connect-param-onSuccess">{<span class="type-annotation">void</span> <span class="parameter-name">onSuccess</span>(<span class="parameter" id="param-sessionId"><span class="type-annotation"><a href="https://api.flutter.dev/flutter/dart-core/int-class.html">int</a></span> <span class="parameter-name">sessionId</span></span>), </span><span class="parameter" id="connect-param-onError"><span class="type-annotation">void</span> <span class="parameter-name">onError</span>(<span class="parameter" id="param-"><span class="type-annotation">dynamic</span></span>)}</span>)
            <span class="returntype parameter">&#8594; Future</span>
          </span>
                  </dt>
        <dd>
          Generates sessionId and returns it as callback value in onSuccess Function, whereas in case of any connection errors is thrown in onError callback if provided. 
                  
</dd>
        <dt id="destroy" class="callable">
          <span class="name"><a href="../janus_client/JanusClient/destroy.html">destroy</a></span><span class="signature">(<wbr>)
            <span class="returntype parameter">&#8594; dynamic</span>
          </span>
                  </dt>
        <dd>
          cleans up rest polling timer or WebSocket connection if used. 
                  
</dd>
        <dt id="noSuchMethod" class="callable inherited">
          <span class="name"><a href="https://api.flutter.dev/flutter/dart-core/Object/noSuchMethod.html">noSuchMethod</a></span><span class="signature">(<wbr><span class="parameter" id="noSuchMethod-param-invocation"><span class="type-annotation"><a href="https://api.flutter.dev/flutter/dart-core/Invocation-class.html">Invocation</a></span> <span class="parameter-name">invocation</span></span>)
            <span class="returntype parameter">&#8594; dynamic</span>
          </span>
                  </dt>
        <dd class="inherited">
          Invoked when a non-existent method or property is accessed. <a href="https://api.flutter.dev/flutter/dart-core/Object/noSuchMethod.html">[...]</a>
                  <div class="features">inherited</div>
</dd>
        <dt id="toString" class="callable inherited">
          <span class="name"><a href="https://api.flutter.dev/flutter/dart-core/Object/toString.html">toString</a></span><span class="signature">(<wbr>)
            <span class="returntype parameter">&#8594; <a href="https://api.flutter.dev/flutter/dart-core/String-class.html">String</a></span>
          </span>
                  </dt>
        <dd class="inherited">
          Returns a string representation of this object. 
                  <div class="features">inherited</div>
</dd>
      </dl>
    </section>

    <section class="summary offset-anchor inherited" id="operators">
      <h2>Operators</h2>
      <dl class="callables">
        <dt id="operator ==" class="callable inherited">
          <span class="name"><a href="https://api.flutter.dev/flutter/dart-core/Object/operator_equals.html">operator ==</a></span><span class="signature">(<wbr><span class="parameter" id="==-param-other"><span class="type-annotation"><a href="https://api.flutter.dev/flutter/dart-core/Object-class.html">Object</a></span> <span class="parameter-name">other</span></span>)
            <span class="returntype parameter">&#8594; <a href="https://api.flutter.dev/flutter/dart-core/bool-class.html">bool</a></span>
          </span>
                  </dt>
        <dd class="inherited">
          The equality operator. <a href="https://api.flutter.dev/flutter/dart-core/Object/operator_equals.html">[...]</a>
                  <div class="features">inherited</div>
</dd>
      </dl>
    </section>




  </div> <!-- /.main-content -->

  <div id="dartdoc-sidebar-right" class="col-xs-6 col-sm-6 col-md-2 sidebar sidebar-offcanvas-right">
    <ol>
    
      <li class="section-title"><a href="../janus_client/JanusClient-class.html#constructors">Constructors</a></li>
      <li><a href="../janus_client/JanusClient/JanusClient.html">JanusClient</a></li>
    
      <li class="section-title">
        <a href="../janus_client/JanusClient-class.html#instance-properties">Properties</a>
      </li>
      <li><a href="../janus_client/JanusClient/apiSecret.html">apiSecret</a></li>
      <li><a href="../janus_client/JanusClient/currentJanusURI.html">currentJanusURI</a></li>
      <li class="inherited"><a href="https://api.flutter.dev/flutter/dart-core/Object/hashCode.html">hashCode</a></li>
      <li><a href="../janus_client/JanusClient/iceServers.html">iceServers</a></li>
      <li><a href="../janus_client/JanusClient/isConnected.html">isConnected</a></li>
      <li><a href="../janus_client/JanusClient/isUnifiedPlan.html">isUnifiedPlan</a></li>
      <li><a href="../janus_client/JanusClient/isUnifiedPlan_.html">isUnifiedPlan_</a></li>
      <li><a href="../janus_client/JanusClient/maxEvent.html">maxEvent</a></li>
      <li><a href="../janus_client/JanusClient/refreshInterval.html">refreshInterval</a></li>
      <li class="inherited"><a href="https://api.flutter.dev/flutter/dart-core/Object/runtimeType.html">runtimeType</a></li>
      <li><a href="../janus_client/JanusClient/server.html">server</a></li>
      <li><a href="../janus_client/JanusClient/sessionId.html">sessionId</a></li>
      <li><a href="../janus_client/JanusClient/token.html">token</a></li>
      <li><a href="../janus_client/JanusClient/withCredentials.html">withCredentials</a></li>
    
      <li class="section-title"><a href="../janus_client/JanusClient-class.html#instance-methods">Methods</a></li>
      <li><a href="../janus_client/JanusClient/attach.html">attach</a></li>
      <li><a href="../janus_client/JanusClient/connect.html">connect</a></li>
      <li><a href="../janus_client/JanusClient/destroy.html">destroy</a></li>
      <li class="inherited"><a href="https://api.flutter.dev/flutter/dart-core/Object/noSuchMethod.html">noSuchMethod</a></li>
      <li class="inherited"><a href="https://api.flutter.dev/flutter/dart-core/Object/toString.html">toString</a></li>
    
      <li class="section-title inherited"><a href="../janus_client/JanusClient-class.html#operators">Operators</a></li>
      <li class="inherited"><a href="https://api.flutter.dev/flutter/dart-core/Object/operator_equals.html">operator ==</a></li>
    
    
    
    
    </ol>
  </div><!--/.sidebar-offcanvas-->

</main>

<footer>
  <span class="no-break">
    janus_client
      0.0.4
  </span>

</footer>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src="../static-assets/typeahead.bundle.min.js"></script>
<script src="../static-assets/highlight.pack.js"></script>
<script src="../static-assets/URI.js"></script>
<script src="../static-assets/script.js"></script>


</body>

</html>
